Pattern-matching algorithms based on term rewrite systems

نویسندگان

  • Joost-Pieter Katoen
  • Albert Nymeyer
چکیده

Automatic code generators often contain pattern matchers that are based on tree grammars. In this work we generalise this approach by developing pattern matchers that are based on more powerful term rewrite systems. A pattern matcher based on a term rewrite system computes all the sequences of rewrite rules that will reduce a given expression tree to a given goal. While the number of sequences of rewrite rules that are generated is typically enormous, the vast majority of sequences are in fact redundant. This redundancy is caused by the fact that many rewrite sequences are permutations of each other. A theory and a series of algorithms are systematically developed that identify and remove two types of redundant rewrite sequences. These algorithms terminate if rewrite sequences do not diverge.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Linear Compressed Pattern Matching for Polynomial Rewriting (Extended Abstract)

This paper is an extended abstract of an analysis of term rewriting where the terms in the rewrite rules as well as the term to be rewritten are compressed by a singleton tree grammar (STG). This form of compression is more general than node sharing or representing terms as dags since also partial trees (contexts) can be shared in the compression. In the first part efficient but complex algorit...

متن کامل

Symbolic computation in software science: Foreword from the editor

The series of workshops on Symbolic Computation in Software Science has been initiated by the research groups of Bruno Buchberger at RISC, Johannes Kepler University of Linz, Tetsuo Ida at the University of Tsukuba, and Masahiko Sato at Kyoto University. As the name suggests, the focus of the series is on applications of symbolic computation techniques in various areas of software science. The ...

متن کامل

Faithful (meta-)encodings of programmable strategies into term rewriting systems

Rewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and rewriting strategies are used to control their application. The operational semantics of these strategies are generally accepted and approaches for analyzing the termination of specifi...

متن کامل

Decidable Type Inference for the Polymorphic Rewriting Calculus

A promising line of research unifying the logic paradigm with the functional paradigm is that of rewrite-based languages [MOM02] like, for example, ELAN [The04d], Maude [The04c], ASF+SDF [The04a], Obj∗ [FN96, Gog04]). This kind of languages have been successfully used for theorem proving [BCM04], constraint solving [Cas96], model-checking [EMS03, CMR04], program transformation [vdBKV96], etc. M...

متن کامل

A faithful encoding of programmable strategies into term rewriting systems

Rewriting is a formalism widely used in computer science and mathematical logic. When using rewriting as a programming or modeling paradigm, the rewrite rules describe the transformations one wants to operate and declarative rewriting strategies are used to control their application. The operational semantics of these strategies are generally accepted and approaches for analyzing the terminatio...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Theor. Comput. Sci.

دوره 238  شماره 

صفحات  -

تاریخ انتشار 2000